package com.br.sc.vendas.modelo;

import java.io.Serializable;

public class Pedido implements Serializable
{

	private static final long serialVersionUID = 1L;
	private Integer id;
	private String data;
	private Cliente cliente;
	private Tipo tipo;
	private Double campo1;
	private Double campo2;
	private Double campo3;
	private Double totalPedido;
	private String traco;
	private Double valor;
	private Integer pedidoEnviado;

	public Pedido ( int id , String date , Tipo tipo , Double campo1 , Double campo2 , Double campo3 , String traco ,
									Double valor , int pedidoEnviado , Cliente cliente )
	{
		this.id = id;
		this.data = date;
		this.cliente = cliente;
		this.tipo = tipo;
		this.campo1 = campo1;
		this.campo2 = campo2;
		this.campo3 = campo3;
		this.traco = traco;
		this.valor = valor;
		this.pedidoEnviado = pedidoEnviado;

		if ( tipo.equals( Tipo.LAJE_VIGAS ) )
			this.totalPedido = ( campo1 * campo2 * campo3 );
		else
			this.totalPedido = ( campo1 * ( campo2 * campo2 ) * campo3 );
	}

	public Pedido ( int id , String date , Tipo tipo , Double campo1 , Double campo2 , Double campo3 , Double total ,
									String traco , Double valor , int pedidoEnviado , Cliente cliente )
	{
		this.id = id;
		this.data = date;
		this.cliente = cliente;
		this.tipo = tipo;
		this.campo1 = campo1;
		this.campo2 = campo2;
		this.campo3 = campo3;
		this.totalPedido = total;
		this.traco = traco;
		this.valor = valor;
		this.pedidoEnviado = pedidoEnviado;
	}

	public Cliente getCliente ( )
	{
		return cliente;
	}

	public String getData ( )
	{
		return data;
	}

	public int getId ( )
	{
		return id;
	}

	public Double getCampo1 ( )
	{
		return campo1;
	}

	public Tipo getTipo ( )
	{
		return tipo;
	}

	public Double getCampo2 ( )
	{
		return campo2;
	}

	public Double getCampo3 ( )
	{
		return campo3;
	}

	public Double getTotalPedido ( )
	{
		return totalPedido;
	}

	public String getTraco ( )
	{
		return traco;
	}

	public Double getValor ( )
	{
		return valor;
	}

	public Integer getPedidoEnviado ( )
	{
		return pedidoEnviado;
	}
}
